package com.freemalll.merchant.domain.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.freemalll.merchant.common.AbstractBaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 * 商户审核日志
 * </p>
 *
 * @author songshixiong
 * @since 2025-06-05
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("mer_auth_flow_log")
@Schema(description = "MerAuthFlowLog对象")
public class MerAuthFlowLog extends AbstractBaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    @Schema(description = "主键")
    @TableId(value = "log_id", type = IdType.ASSIGN_UUID)
    private String logId;

    @Schema(description = "所属审核流程")
    @TableField("flow_id")
    private String flowId;

    @Schema(description = "审核状态")
    @TableField("auth_status")
    private String authStatus;

    @Schema(description = "上一次审核状态")
    @TableField("last_auth_status")
    private String lastAuthStatus;

    @Schema(description = "审核人")
    @TableField("auth_man")
    private String authMan;

    @Schema(description = "审核人员id")
    @TableField("auth_man_id")
    private String authManId;

    @Schema(description = "审核时间")
    @TableField("auth_date")
    private LocalDateTime authDate;

    @Schema(description = "审核备注")
    @TableField("auth_remark")
    private String authRemark;

    @Schema(description = "当次审核资料的JSON")
    @TableField("auth_content")
    private String authContent;

}
